package org.example.operator.transform

import org.apache.spark.rdd.RDD
import org.apache.spark.{SparkConf, SparkContext}

/**
 * rdd的算子，也就是rdd的方法
 *
 * distinct 去重
 *
 */
object Spark11_RDD_Operator_SortBy {
  def main(args: Array[String]): Unit = {

    val conf: SparkConf = new SparkConf().setMaster("local[*]").setAppName("RDD")
    val context = new SparkContext(conf)

    val rdd = context.makeRDD(List(6,2,4,3,5,1),2)

    /**
      * sortBy方法可以根据指定的规则，对数据源的数据进行排序，默认为升序
      * sortBy默认情况下，不会改变分区，但是中间存在shuffle操作
      */
    val value: (Int => Nothing) => RDD[Int] = rdd.sortBy(_,false)

    context.stop();
  }
}
